Techniques for sampling an analog signal, converting the sampled signal to digital and processing that signal using digital techniques are known in the art. An example of an analog signal source is that provided by a measurement sensor, such as a thermocouple or a strain gauge. Some techniques for sampling an analog signal use a rough buffer to precharge the sampling capacitor followed by a period of fine adjustment. The sampled analog signal is converted to digital. Conversion to digital may produce a digital stream of one or more bits.
Filters for doing such processing, such as FIR filters and FIR sinc filters are known. Some such filters use coefficients for multiplying digital values. Others, such as Hogenauer filters, described in an article by Eugene B. Hogenauer, entitled "AN ECONOMICAL CLASS OF DIGITAL FILTERS FOR DECIMATION AND INTERPOLATION," published in IEEE Transactions on Acoustics, Speech and Signal Processing, Volume ASSP-29, No. 2, April 1981, perform the filtering without coefficients.
Digital filters such as sinc filters can be implemented using digital circuits for performing a variety of mathematical operation. Multipliers are known which use 2's complement addition to perform multiplication. However, such multipliers require a fair amount of power, machine cycles and silicon real estate to implement.
Some signal processing circuits handle a plurality of channels. Parameters for one or more of such channels may be adjusted using gain and offset registers dedicated for that channel. Some measurement circuits such as those used for weigh scales require an adjustment so that a maximum digital output level corresponds to a calibrated full scale input signal value.
Some integrated circuits use signal processing circuits that can be programmed to set selectable characteristics, such as sampling rate and maximum input voltage. These properties are selected by issuing command signals that are applied to terminals connected to the circuit. Typically, such commands are issued to the circuit every time one of the selectable properties changes. During operation, the number and complexity of such commands issued can become significant.
It would be desirable to have a programmable analog to digital converter (ADC) which could handle a plurality of channels in a flexible way so that high volume conversion can be sustained. It would be further desirable for this flexibility to extend to sampling and converting a plurality of channels in any order, including more repetitions of one channel than another, the ability to sample the same channel at different times with different conversion characteristics, and the ability to skip converting some channels altogether. It would be particularly desirable if conversion properties could be selected flexibility and changed rapidly using fewer and simpler commands than in other signal processing circuits.